#pragma once
#include <string>
#include <vector>
#include "Treasure.h"
//#include "ColorRouteInfo.h"
#include "Tile.h"


using namespace std;
namespace Model{
	class Color
	{
	private:
		string name;
		vector<Treasure*> treasureStack;
		Tile* currentTile;
		//ColorRouteInfo searchPath(Tile* tile, ColorRouteInfo routeInfo);
	public:
		string getName();
		string getTopTreasure();
		void setPos(int x,int y);
		void setTreasureStack(vector<Treasure*> ts);
		void pushTreasure(Treasure* t);
		void popTreasure();
		bool hasTreasure();
		Tile* getCurrentTile();
		void setCurrentTile(Tile* t);
		void goUp();
		void goDown();
		void goLeft();
		void goRight();
		//ColorRouteInfo goToTile(Tile* tile);
		Color(string name);
		~Color(void);
	};
}
